本文介绍HSF应用开发时JVM -D启动参数的配置信息。
-Dhsf.server.port
指定HSF的启动服务绑定端口,默认为12200。如果在本地启动多个HSF Provider,则需要修改此端口。
-Dhsf.server.max.poolsize
指定HSF的服务端最大线程池大小,默认值为720
。
-Dhsf.server.min.poolsize
指定HSF的服务端最小线程池大小,默认值为50
。
-Dhsf.client.localcall
打开或者关闭本地优先调用,默认值为true
。
-Dpandora.qos.port
指定Pandora监控端口,默认值为12201
。如果在本地启动多个HSF Provider,则需要修改此端口。
-Dhsf.http.enable
是否开启HTTP端口,默认值为 true
。
-Dhsf.http.port
指定HSF暴露的HTTP接口,默认值为12220
。如果在本地启动多个HSF Provider,则需要修改此端口。
-Dhsf.run.mode
指定HSF客户端是否指定target进行调用,即绕开ConfigServer。值为1
,表示不允许指定target调用;值为0
,表示允许指定target调用。默认值为1
时,不推荐指定为0
。
-Dhsf.shuthook.wait
HSF优雅关闭的等待时间,单位是ms,默认值是10000
。
-Dhsf.publish.delayed
是否所有的服务都需要延迟发布,默认是false,不需要延迟发布 。
-Dhsf.server.ip
指定需要绑定的IP地址。在多网卡情况下默认绑定第一个网卡,通过该参数指定需要绑定的IP。
-DHsfBindHost
指定需要绑定的Host。在多网卡情况下默认绑定和上报给地址注册中心第一个网卡的IP地址,通过该参数可以指定需要绑定的Host,例如-DHsfBindHost=0.0.0.0
将HSF Server端口绑定本机所有网卡。
-Dhsf.publish.interval=400
指定发布服务之间的时间间隔。HSF服务发布时会瞬间暴露出去,在应用启动时如果承受不住压力,可以配置该参数。默认值是400,单位ms。
-Dhsf.client.low.water.mark=32
-Dhsf.client.high.water.mark=64
-Dhsf.server.low.water.mark=32
-Dhsf.server.high.water.mark=64
指定客户端或者服务端的每个channel写缓冲的限制。
- 客户端每个channel的写缓冲的限制,单位为KB,一旦超过高水位,channel禁写,新的请求放弃写出,直接报错。禁写之后,等到缓冲区低于低水位才能恢复。
- 服务端每个channel的写缓冲的限制,单位为KB,超过高水位时,新的响应放弃写出,客户端收不到响应会超时。缓冲区低于低水位时才能恢复写。
- 高低水位需成对设置,并且需要高水位大于低水位。
-Dhsf.generic.remove.class=true
获取泛化调用的结果,但不输出class
字段信息。
-DdefaultHsfClientTimeout
全局的客户端超时配置。
-Dhsf.invocation.timeout.sensitive
hsf.invocation.timeout.sensitive
默认值设置为false,决定HSF调用时间是否包含创建连接、选址等耗时逻辑。